package ExistController;

public class Usuario {
	
    private String nombre;
	private String apellidos;
	private String password;
	private String rol;
	private String dni;
	private String direccion;
	private String pcId;
	
	/**
	 * Crea un Usuario vacio
	 */
	public Usuario(){}
	
	/**
	 * Crea un Usuario con los parametros pasados
	 * @param nombre Contiene el nombre del usuario, o nombre empresa
	 * @param apellidos Contiene los apellidos del usuario o vacio
	 * @param password Contiene el password cifrado del usuario
	 * @param rol Contiene el rol, puede tratarse de un Usuario o Cliente
	 * @param dni Representa el dni o nif del Usuario
	 * @param direccion Contiene la dirección del usuario o la empresa
	 * @param pcId Contiene una id del Usuario
	 */
	public Usuario( String nombre,String apellidos, String password, String rol, String dni, String direccion, String pcId)
	{
		this.nombre = nombre;
		this.apellidos = apellidos;
		this.password = password;
		this.rol = rol;
		this.dni = dni;
		this.direccion = direccion;
		this.pcId = pcId;		
	}
	
	/**
	 * Obtenemos el Nombre del Usuario
	 * @return Devuelve un String con el nombre del Usuario
	 */
	public String getNombre()
	{
		return nombre;
	}
	
	/**
	 * Obtenemos los apellidos del Usuario
	 * @return Devuelve un String con los apellidos del Usuario
	 */
	public String getApellidos()
	{
		return apellidos;
	}
	
	/**
	 * Obtenemos el password cifrado del Usuario
	 * @return Devuelve un String cifrado del Usuario
	 */
	public String getPassword()
	{
		return password;
	}
	
	/**
	 * Obtenemos el Rol del usuario, ya sea usuario o cliente
	 * @return Devuelve un String con el Rol del Usuario
	 */
	public String getRol()
	{
		return rol;
	}
	
	/**
	 * Obtenemos el Dni o Nif del Usuario
	 * @return Devuelve un String que contiene el dni o nif del Usuario
	 */
	public String getDni()
	{
		return dni;
	}
	
	/**
	 * Obtiene la direccion postal del Usuario
	 * @return Devuelve un String con la direccion postal del Usuario 
	 */
	public String getDireccion()
	{
		return direccion;
	}
	
	/**
	 * Obtiene el Id del Usuario
	 * @return Devuelve un String con la id del Usuario
	 */
	public String getPcid()
	{
		return pcId;
	}
	

	/**
	 * Modifica el nombre del Usuario
	 * @param n Contiene el nombre del Usuario
	 */
	public void setNombre(String n)
	{
		nombre = n;
	}
	
	/**
	 * Modifica los apellidos del Usuario
	 * @param ape Contiene el apellido o apellidos del Usuario
	 */
	public void setApellidos(String ape)
	{
		apellidos = ape;
	}
	
	/**
	 * Modifica el password del Usuario
	 * @param pass Contiene el password que será modificado en el Usuario
	 */
	public void setPassword(String pass)
	{
		password = pass;
	}
	
	/**
	 * Modifica el Rol del Usuario
	 * @param R Contiene el rol, puede ser usuario o cliente
	 */
	public void setRol(String R)
	{
		rol = R;
	}
	
	/**
	 * Modifica el dni o nif del Usuario
	 * @param dn Contiene el dni o nif que se asignará al Usuario
	 */
	public void setDni(String dn)
	{
		dni= dn;
	}
	
	/**
	 * Modifica la dirección del Usuario
	 * @param dir Contiene la dirección postal del Usuario
	 */
	public void setDireccion(String dir)
	{
		direccion = dir;
	}
	
	/**
	 * Modifica el id del usuario
	 * @param id Contiene la id nueva del Usuario
	 */
	public void setPcid(String id)
	{
		pcId = id;
	}
	
	/**
	 * Imprime por pantalla los parametros de este Usuario
	 */
	public void printUsr()
	{
		System.out.println("Nombre: "+ this.getNombre() );
		System.out.println("Apellidos: "+ this.getApellidos() );
		System.out.println("PassWord: "+ this.getPassword() );
		System.out.println("Rol: "+ this.getRol() );
		System.out.println("DNI: "+ this.getDni() );
		System.out.println("Direccion: "+ this.getDireccion() );
		System.out.println("PcID: "+ this.getPcid() );
	}
	
}
